;(function () {
  $('.rightpart li').hover(function () {
    $(this).find('.dl').stop(true, true).slideDown(400)
  }, function () {
    $(this).find('.dl').slideUp(100)
  })
  var businessLicense = '', isSubmitting = false
  var $btnUpload = $('#btnUpload'),
    $close = $('.close')
  // 上传营业执照
  $('#fileupload').fileupload({
    url: Util.openApi + '/file/upload',
    fileName: 'multipartFile',
    autoUpload: false,
    disableImageResize: /Android(?!.*Chrome)|Opera/
      .test(window.navigator.userAgent),
    maxFileSize: 999000,
    acceptFileTypes: /(gif|jpe?g|png)$/i,
    dataType: 'json', // 服务器返回的数据类型
    limitMultiFileUploads: 1, // 最大上传文件数目
    singleFileUploads: true,
    maxFileSize: 1000000, // 文件上限1MB
    minFileSize: 100, // 文件下限  100b
    messages: { // 文件错误信息
      acceptFileTypes: '文件类型不匹配',
      maxFileSize: '文件过大',
      minFileSize: '文件过小'
    }

  }) // 图片添加完成后触发的事件
    .on('fileuploadadd', function (e, data) {
      // validate(data.files[0])这里也可以手动来验证文件格式和大小

      // 隐藏或显示页面元素
      //   $('#progress .bar').css( 
      //       'width', '0%'
      //     )
      $btnUpload[0].style.display = 'inline-block'

      // 获取图片路径并显示
      var url = getUrl(data.files[0])
      console.log(data.files)
      $('#image').attr('src', url)
      $('.img-li').show()

    // 绑定开始上传事件
      
      $btnUpload.off('click').on('click',function () {
          console.log('正在上传')
        $btnUpload.html('正在上传...')
        jqXHR = data.submit()
      })
    })
    // 当一个单独的文件处理队列结束触发(验证文件格式和大小)
    .on('fileuploadprocessalways', function (e, data) {
      // 获取文件
      file = data.files[0]
      // 获取错误信息
      if (file.error) {
        alert(file.error)
        $('#btnUpload').hide()
        $('.img-li').hide()
      }
    })
    // 上传请求失败时触发的回调函数
    .on('fileuploadfail', function (e, data) {
      console.log(data.errorThrown)
    })
    // 上传请求成功时触发的回调函数
    .on('fileuploaddone', function (e, data) {
      $btnUpload.hide()
      $close.show()
      $('#uploadTip').html('重新上传营业执照，替换之前的营业执照');
      $('#fileupload').hide();
      console.log(data.result)
      businessLicense = data.result;
      $btnUpload.html('重新上传')
      alert('上传成功')
      
    })
    // 上传请求结束后，不管成功，错误或者中止都会被触发
    .on('fileuploadalways', function (e, data) {
      console.log($('#fileupload').val())
    })

  // 获取图片地址
  function getUrl (file) {
    var url = null
    if (window.createObjectURL != undefined) {
      url = window.createObjectURL(file)
    } else if (window.URL != undefined) {
      url = window.URL.createObjectURL(file)
    } else if (window.webkitURL != undefined) {
      url = window.webkitURL.createObjectURL(file)
    }
    return url
  }

  // 删除图片
  $close.on('click', function (e) {
    businessLicense = ''
    $('.img-li').hide()
    $btnUpload.html('重新上传')
    $close.hide()
  });
//   重新上传营业执照
function fileUploadClick() {
    return $('#fileupload').click();
}
$('#uploadTip').on('click', function(e) {
    fileUploadClick();
})
  //   注册
  $('#btnRegister').on('click', function (e) {
      if (isSubmitting) {
          return;
      }
    var username = $('#username').val().trim(),
        password = $('#password').val(),
        pwdConfirm = $('#pwdConfirm').val(),
        idcard = $('#idcard').val().trim(),
        email = $('#email').val().trim(),
        phone = $('#phone').val().trim(),
        companyNameCh = $('#companyNameCh').val().trim(),
        companyNameEn = $('#companyNameEn').val().trim(),
        creditCode = $('#creditCode').val().trim(),
        companyType = $('#companyType').val(),
        addrArea = $('#addrArea').val(),
        addr = $('#addr').val().trim(),
        contractPerson = $('#contractPerson').val().trim(),
        copCode = $('#copCode').val().trim();

        // 验证
        if (username.length <= 0) {
            alert('用户名不能为空！');
            return;
        }
        if (password.length <= 0) {
            alert('密码不能为空！');
            return;
        }
        if (pwdConfirm.length <= 0) {
            alert('确认密码不能为空！');
            return;
        }
        if (email.length <= 0) {
            alert('邮箱不能为空！');
            return;
        }
        if (phone.length <= 0) {
            alert('手机号码不能为空！');
            return;
        }
        if (companyNameCh.length <= 0) {
            alert('公司中文名不能为空！');
            return;
        }
        if (creditCode.length <= 0) {
            alert('统一社会信用代码不能为空！');
            return;
        }
        if (contractPerson.length <= 0) {
            alert('联系人不能为空！');
            return;
        }

        // 验证用户名
        if(!(/^[A-Za-z0-9]+$/.test(username))) {
            alert('用户名格式不正确');
            return;
        }
        if(!(/^[\w]{6,18}$/.test(password))) {
            alert('密码格式不正确');
            return;
        }
        if(password !== pwdConfirm) {
            alert('两次密码不一致');
            return;
        }
        // if(!(/^[1-9]\d{5}(18|19|20)\d{2}((0[1-9])|(1[0-2]))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$/.test(idcard))) {
        //     alert('身份证格式不正确');
        //     return;
        // }
        if(!(/^[\w.\-]+@(?:[a-z0-9]+(?:-[a-z0-9]+)*\.)+[a-z]{2,3}$/.test(email))) {
            alert('邮箱格式不正确');
            return;
        }
        if(!(/^1[3|4|5|8]\d{9}$/.test(phone))) {
            alert('手机格式不正确');
            return;
        }
        if(!( /[^\u0000-\u00FF]/.test(companyNameCh)) || companyNameCh.length > 50) {
            alert('公司中文名格式不正确');
            return;
        }

        if(!(/^[A-Za-z0-9]+$/.test(creditCode))) {
            alert('统一社会信用代码格式不正确');
            return;
        }
        if(!( /[^\u0000-\u00FF]/.test(contractPerson))) {
            alert('联系人格式不正确');
            return;
        }
        // console.log('register')
        isSubmitting = true;
        var $target = $(e.currentTarget);
        $target.html('正在提交...')
        $.ajax({
            url: Util.openApi + '/reg/register',
            contentType: 'application/x-www-form-urlencoded',
            dataType: 'json',
            type:'post',
            timeout: 20000,
            data: {
                username: username,
                password: md5(password, Util.getKey(), false),
                repassword: pwdConfirm,
                idcard: idcard,
                email: email,
                mobile: phone,
                nameZH: companyNameCh,
                nameEN: companyNameEn,
                code: creditCode,
                businessLicense: businessLicense,
                orgNatureId: companyType,
                region: addrArea,
                addr: addr,
                contactPerson: contractPerson,
                copCode: copCode
            },
            success: function(data) {
                console.log('success')
                isSubmitting = false;
                $target.html('提交');
                console.log(data);
                if(data.code === 200) {
                    alert('注册成功！')
                } else {
                  alert(data.message)
                }
            }
        })

  })
})()
